Model-Checking TRIO Specifications in SPIN
نویسندگان
چکیده
We present a novel application on model checking through SPIN as a means for verifying purely descriptive specifications written in TRIO, a first order, linear-time temporal logic with both future and past operators and a quantitative metric on time. The approach is based on the translation of TRIO formulas into Promela programs guided by an equivalence between TRIO and 2-way alternating Büchi automata. An optimization technique based on the concept of modularized TRIO specifications is also shown. The results of our experimentation are quite encouraging, as we are able to verify properties of the Railway Crossing Problem, a well-known benchmark used in the Formal Methods community, for values of the temporal constants that make the verification totally infeasible with traditional tools and approaches.
منابع مشابه
Model Checking CoreASM Specifications
In this paper we present an approach to model checking abstract state machines using the Spin model checker. We give an algorithm for automatically transforming ASM specifications written in CoreASM [1] into Promela specifications. Though an algorithm for translating ASMs into Promela has already been presented in [2], our method supports a more powerful ASM language, including support for n-ar...
متن کاملThe High Road to Formal Validation: Model Checking High-Level versus Low-Level Specifications
In this paper we examine the difference between model checking high-level and low-level models. In particular, we compare the ProB model checker for the B-method and the SPIN model checker for Promela. While SPIN has a dramatically more efficient model checking engine, we show that in practice the performance can be disappointing compared to model checking high-level specifications with ProB. W...
متن کاملDeterministic Compilation of Temporal Safety Properties in Explicit State Model Checking
The translation of temporal logic specifications constitutes an essential step in model checking and a major influence on the efficiency of formal verification via model checking. We devise a new explicit-state translation of Linear Temporal Logic to automata for the class of LTL specifications that describe safety properties, arguably the most used formal specifications in real-world systems. ...
متن کاملNot checking for closure under stuttering
The model checker SPIN works better with specifications that are closed under stuttering. Checking such specifications, SPIN can use its partial-order reductions. It is hard to check whether a given specification is closed under stuttering and it is pity to give up SPIN'S partial-order reductions. We suggest an algorithm that, given a program P and a specification N of bad behaviors for P, chec...
متن کاملModel Checking for Managers
Model checking is traditionally applied to computer system design. It has proven to be a valuable technique. However, it requires detailed specifications of systems and requirements, and is therefore not very accessible. In this paper we show how model checking can be applied in the context of business modeling and analysis by people that are not trained in formal techniques. Spin is used as th...
متن کامل